Some devices may be manually configured to adapt to various factors such as the context or environment in which the devices operate. Such devices may require setting of one or more configuration parameters to achieve a desired performance level that may be represented by one or more performance parameters. The applicable performance parameters may depend on various factors such as the type of device, hardware components of the device, and software components of the device. Example performance parameters include, for example, operating time, power consumption, processing speed, and transmission distance of signals. Taking an example of an asset tracking device that tracks and reports location and/or status of a moving asset, a user may choose configuration parameters such as the reporting interval, and the strength of wireless signals generated by the asset tracking device. By changing such optional configuration parameters, a user may achieve the desired performance parameter within the constraints posed by various aspects of device operation.
FIG. 1 is a conceptual diagram illustrating a conventional method of setting a performance parameter Y by setting configuration parameters X1 through Xn. In this example, the performance parameter is an estimated battery life. The configuration parameters X1 through Xn include various configurable parameters that affect the battery life. For example, the configurable parameters include the interval of data transmission, processing speed of a processor, and backlight intensity of a display device. In a conventional system, a user sets values for each of the configuration parameters X1 through Xn. In response, a performance parameter value Y corresponding to the set of configuration parameters X1 through Xn may be displayed for approval by the user before applying the configuration parameters X1 through Xn to the device. In other words, the user provides a set of configuration parameters (X1, X2, . . . Xn), and the value of the performance parameter Y is determined as a function (f) of the configuration parameters (X1, X2, . . . , Xn).
Achieving the desired performance parameter Y through setting of the configuration parameters X1 through Xn may pose issues under certain circumstances. If the relationship (function “f”) between the optional configuration parameters X1 through XN and the performance parameter Y is not intuitive, a user may have to test many combinations of configuration parameter values X1 through Xn before the user can find a correct set of configuration parameters X1 through Xn for attaining a certain performance parameter. The process of finding the configuration parameter values X1 through Xn may involve a trial and error which may take an extended amount of time.
Moreover, more often than not, the combination of configuration parameters achieved by trial and error may not be optimal in one way or the other. The issue is exacerbated if there are a large number of configuration values to be set, the configuration parameters values are interdependent on each other and/or the user is unfamiliar with the details of the device operation. In such case, the user may have to spend an extended amount of time to find a correct combination of configuration parameters.